package org.springframework.samples.webflow.dao;

import java.util.Collection;

import org.springframework.samples.webflow.entity.Category;
import org.springframework.samples.webflow.entity.Customer;
import org.springframework.samples.webflow.entity.Product;

public interface CommonDao {
	
	public Collection<Customer> getAll();
    
    public Collection<Customer> findByName(String name);

    public Customer getById(Long id);

    public void save(Customer customer);

    public void delete(Long id);

	public Collection<Category> getAllCategories();

	public void saveCategory(Category category);

	public Collection<Product> getProductsByCategory(Long categoryId);

	public void saveProduct(Product product);

	public Product getProductById(Long productId);
	
	public Collection<Customer> findByCriterias(SearchCriteria searchCriteria);
}
